//系統錯誤日誌類
/**
 * 服務器顯示、日誌生成文件保存，日誌有用數據便於提取
 * 日誌類別按模塊分：server，user，room，sql，
 * 
 */
function log() {
	this.path = 'sfsExtensions/texas/logs/';
	this.type = ['server', 'user', 'room', 'sql' ];
}
/**
 * 服務端日誌顯示與查看object以及array數據
 */
log.prototype.show = function(r_msg,r_begin) {
	var _type = typeof(r_msg);	
	r_begin = (r_begin == undefined) ? 1 : r_begin;
	(r_begin == 1) ? __out.println("======================================================================") : null;	
	if ( _type == 'array' || _type == 'object') {
		var _space = '';
		if (r_begin > 4 ) {
			return;		
		}
		for (var m = 1; m < r_begin; m++ ) {
			_space += '	';
		}
		for (var i in r_msg) {
			if (typeof(r_msg[i]) == 'object' || typeof(r_msg[i]) == 'array') {
				this.show(r_msg[i], (r_begin + 1));				
			}else {
				__out.println("= " +_space + i + "=>" + r_msg[i]);							
			}
		}
	}else {
		__out.println("=" + r_msg);		
	}	
	(r_begin == 1) ? __out.println("======================================================================") : null;	
}
/**
 * 將日誌根據類別寫入不同的目錄文件
 * 命名格式為 2010-02-04.fog
 * 
 */
log.prototype.write = function(r_type, r_msg) {
	var _date = new java.util.Calendar.getInstance();
	var _file_name = _date.get(11) + "-" + _date.get(12) + '.fog';//时（11）分（12）	
	var _file_path = this.path + r_type + "/" + _date.get(1) + "/" + (_date.get(2) + 1) + "/" + _date.get(5);	
	//年（1）月（2）日（5）
	if (!_server.fileExist(_file_path)) {
		_server.makeDir(_file_path);
	}
	_file_path += "/" + _file_name;
	switch(typeof(r_msg)) {
		case 'object':
		case 'array':
			r_msg = __convertToJSON(r_msg);
		default:
			break;
	}
	r_msg += '\r';
	_server.writeFile(_file_path, r_msg, true);
}

log.prototype.warning = function() {
	
}